// P2888 write by cn_ryh